package com.sjft.cloud.commons.support.datamodel.core.prop;

import com.sjft.cloud.commons.support.datamodel.core.ModelFieldProp;
import com.sjft.cloud.commons.support.datamodel.core.rule.JsonRule;
import com.sjft.cloud.commons.support.datamodel.core.value.JsonValue;
import com.sjft.cloud.commons.support.datamodel.enums.ModelFieldTypeEnum;
import com.sjft.cloud.commons.support.datamodel.enums.MysqlColumnTypeEnum;
import lombok.Getter;
import lombok.Setter;

/**
 * JsonProp
 *
 * @author Jin
 */
@Getter
@Setter
public class JsonProp implements ModelFieldProp<JsonRule, JsonValue> {
    private String name = ModelFieldTypeEnum.JSON_NAME;
    private String columnType = MysqlColumnTypeEnum.VARCHAR.getCode();
    private Integer length = 1024;
    private Boolean autoIncrement = false;
    private String defaultValue = "";
    private Boolean notNull = false;
    private Boolean primaryKey = false;

    private JsonRule rule = new JsonRule();
    private JsonValue value = new JsonValue();

}
